// vuex中存放共享状态
const state = {
    userInfo: { name: "张三", age: 18 },
    userList: []
};
// 相当于计算属性,可以在这里对状态进行处理之后抛出
const getters = {
    userInfoResult(state) {
        // 当检测到没有用户头像的时候.默认添加一个用户头像
        state.userInfo.avatar =
            state.userInfo.avatar ||
            "https://ss1.bdstatic.com/70cFvXSh_Q1YnxGkpoWK1HF6hhy/it/u=1813892923,1062963134&fm=26&gp=0.jpg";
        return state.userInfo;
    }
};
// 修改状态,只能有同步操作.不能有异步操作,默认传入state状态,修改state
const mutations = {
    SAVEUSER(state, params) {
        state.userInfo = params;
    },
    SAVEUSERList(state, params) {
        state.userList = params;
    }
};
//   异步操作 页面通过this.$store.dispatch('saveUserInfo', payload)来触发actions里面的方法.
// actions通过commit 触发mutations里面的方法  mutation直接修改值
const actions = {
    saveUserInfo({ commit }, params) {
        console.log("我是vuex中==============", params);
        commit("SAVEUSER", params);
    },
    saveUserList({ commit }, params) {
        commit("SAVEUSERList", params);
    }
};
// 存到 内存(刷新会释放);
export default {
    namespaced: true,
    state,
    getters,
    mutations,
    actions
};
